blob: ea01915a7b22e94a9fcbe7394b05d9d1104d6fe4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import { Loading } from '@umami/react-zen';
import { createContext, type ReactNode } from 'react';
import { useUserQuery } from '@/components/hooks/queries/useUserQuery';
import type { User } from '@/generated/prisma/client';
export const UserContext = createContext<User>(null);
export function UserProvider({ userId, children }: { userId: string; children: ReactNode }) {
const { data: user, isFetching, isLoading } = useUserQuery(userId);
if (isFetching && isLoading) {
return <Loading placement="absolute" />;
}
if (!user) {
return null;
}
return <UserContext.Provider value={user}>{children}</UserContext.Provider>;
}
|